home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 22 / PC Actual CD 22.iso / progs / Netobj / netobj / t2.z / TimeBasedComp.nfx (.txt) < prev    next >
Encoding:
Java Class File  |  1997-04-29  |  5.2 KB  |  271 lines

  1. public class TimeBasedComp extends ComponentApp {
  2.    int maxWidth;
  3.    int maxHeight;
  4.    int numImages;
  5.    static final int MaxImages = 24;
  6.    DDrawJava theJavaApplet;
  7.    int[] imageNames;
  8.    int[] imageURLs;
  9.    int[] imageStarts;
  10.    DAssetManager assetMan;
  11.  
  12.    public String PropertyListener(String var1, String var2, int var3, int var4, IDInspector var5) {
  13.       if (var3 == 1) {
  14.          if (var1.compareTo("Number of Images") == 0) {
  15.             return Integer.toString(this.numImages);
  16.          }
  17.  
  18.          for(int var6 = 0; var6 < this.numImages; ++var6) {
  19.             if (var1.compareTo("Image " + Integer.toString(var6 + 1)) == 0) {
  20.                return Integer.toString(this.imageNames[var6]);
  21.             }
  22.  
  23.             if (var1.compareTo("URL for Image " + Integer.toString(var6 + 1)) == 0) {
  24.                return Integer.toString(this.imageURLs[var6]);
  25.             }
  26.  
  27.             if (var1.compareTo("Start Time for Image " + Integer.toString(var6 + 1)) == 0) {
  28.                return Integer.toString(this.imageStarts[var6]);
  29.             }
  30.          }
  31.       } else if (var1.compareTo("Number of Images") == 0) {
  32.          int var12 = Integer.parseInt(var2, 10);
  33.          if (var12 > 24) {
  34.             var12 = 24;
  35.          }
  36.  
  37.          if (var12 < this.numImages) {
  38.             DImage var7 = new DImage();
  39.             this.maxHeight = this.maxWidth = 0;
  40.  
  41.             for(int var8 = 0; var8 < var12; ++var8) {
  42.                String var9 = this.assetMan.GetAssetLocation(this.imageNames[var8], 1, 1);
  43.                var7.setImageFile(var9);
  44.                IDSize var10 = var7.getSize();
  45.                if (var10.getHeight() > this.maxHeight) {
  46.                   this.maxHeight = var10.getHeight();
  47.                }
  48.  
  49.                if (var10.getWidth() > this.maxWidth) {
  50.                   this.maxWidth = var10.getWidth();
  51.                }
  52.             }
  53.  
  54.             this.theJavaApplet.SetSize(this.maxWidth, this.maxHeight);
  55.          }
  56.  
  57.          while(var12 < this.numImages) {
  58.             this.assetMan.RemoveAsset(this.imageNames[this.numImages += -1]);
  59.          }
  60.  
  61.          this.numImages = var12;
  62.          this.theJavaApplet.AddParam(var1, "String\u0000", var2);
  63.       } else {
  64.          for(int var13 = 0; var13 < this.numImages; ++var13) {
  65.             if (var1.compareTo("Image " + Integer.toString(var13 + 1)) == 0) {
  66.                if (this.imageNames[var13] != 0) {
  67.                   this.assetMan.RemoveAsset(this.imageNames[var13]);
  68.                }
  69.  
  70.                this.imageNames[var13] = Integer.parseInt(var2, 10);
  71.                String var14 = this.assetMan.GetAssetLocation(this.imageNames[var13], 1, 1);
  72.                this.theJavaApplet.setImageFile(var14);
  73.                DImage var16 = new DImage();
  74.                this.maxHeight = this.maxWidth = 0;
  75.  
  76.                for(int var17 = 0; var17 < this.numImages; ++var17) {
  77.                   var14 = this.assetMan.GetAssetLocation(this.imageNames[var17], 1, 1);
  78.                   var16.setImageFile(var14);
  79.                   IDSize var18 = var16.getSize();
  80.                   if (var18.getHeight() > this.maxHeight) {
  81.                      this.maxHeight = var18.getHeight();
  82.                   }
  83.  
  84.                   if (var18.getWidth() > this.maxWidth) {
  85.                      this.maxWidth = var18.getWidth();
  86.                   }
  87.                }
  88.  
  89.                this.theJavaApplet.SetSize(this.maxWidth, this.maxHeight);
  90.             }
  91.  
  92.             if (var1.compareTo("URL for Image " + Integer.toString(var13 + 1)) == 0) {
  93.                this.imageURLs[var13] = Integer.parseInt(var2, 10);
  94.             }
  95.  
  96.             if (var1.compareTo("Start Time for Image " + Integer.toString(var13 + 1)) == 0 && var13 != 0) {
  97.                this.imageStarts[var13] = Integer.parseInt(var2, 10);
  98.                if (this.imageStarts[var13] > 23) {
  99.                   this.imageStarts[var13] = 23;
  100.                } else if (this.imageStarts[var13] < 0) {
  101.                   this.imageStarts[var13] = 0;
  102.                }
  103.             }
  104.          }
  105.       }
  106.  
  107.       return "";
  108.    }
  109.  
  110.    public void onCopy() {
  111.       int[] var1 = this.imageNames;
  112.       int[] var2 = this.imageURLs;
  113.       this.imageNames = new int[24];
  114.       this.imageURLs = new int[24];
  115.  
  116.       for(int var3 = 0; var3 < this.numImages; ++var3) {
  117.          this.imageNames[var3] = var1[var3];
  118.          this.imageURLs[var3] = var2[var3];
  119.          if (this.imageNames[var3] != 0) {
  120.             this.assetMan.CopyAsset(this.imageNames[var3]);
  121.          }
  122.  
  123.          if (this.imageURLs[var3] != 0) {
  124.             this.assetMan.CopyAsset(this.imageURLs[var3]);
  125.          }
  126.       }
  127.  
  128.    }
  129.  
  130.    public String onInstall(DAssetManager var1, String var2) {
  131.       this.assetMan = var1;
  132.       return "Time Based Picture";
  133.    }
  134.  
  135.    protected void finalize() {
  136.       for(int var1 = 0; var1 < this.numImages; ++var1) {
  137.          if (this.imageNames[var1] != 0) {
  138.             this.assetMan.RemoveAsset(this.imageNames[var1]);
  139.          }
  140.       }
  141.  
  142.    }
  143.  
  144.    public void onUnInstall(DAssetManager var1) {
  145.    }
  146.  
  147.    public void onPublish(DAssetManager var1, int var2) {
  148.       if (var2 == 1) {
  149.          for(int var3 = 0; var3 < this.numImages; ++var3) {
  150.             String var4 = this.assetMan.GetAssetLocation(this.imageNames[var3], var2, 0);
  151.             var4.replace('|', ':');
  152.             this.theJavaApplet.AddParam("Image " + Integer.toString(var3 + 1), "String\u0000", "file:///" + var4);
  153.          }
  154.       } else {
  155.          for(int var11 = 0; var11 < this.numImages; ++var11) {
  156.             this.theJavaApplet.AddParam("Image " + Integer.toString(var11 + 1), "String\u0000", this.assetMan.GetAssetRelativeLocation(this.imageNames[var11], var2, 0));
  157.          }
  158.       }
  159.  
  160.       for(int var12 = 0; var12 < this.numImages; ++var12) {
  161.          String var14;
  162.          if (this.imageURLs[var12] != 0) {
  163.             var14 = this.assetMan.GetAssetLocation(this.imageURLs[var12], var2, 1);
  164.          } else {
  165.             var14 = "";
  166.          }
  167.  
  168.          this.theJavaApplet.AddParam("URL for Image " + Integer.toString(var12 + 1), "String\u0000", var14);
  169.          this.theJavaApplet.AddParam("Start Time for Image " + Integer.toString(var12 + 1), "String\u0000", Integer.toString(this.imageStarts[var12]));
  170.       }
  171.  
  172.       this.theJavaApplet.AddParam("Image Width", "String\u0000", Integer.toString(this.maxWidth));
  173.       this.theJavaApplet.AddParam("Image Height", "String\u0000", Integer.toString(this.maxHeight));
  174.       IDRect var13 = this.theJavaApplet.getObjectRect();
  175.       this.theJavaApplet.AddParam("X Position", "String\u0000", Integer.toString(var13.getLeft()));
  176.       this.theJavaApplet.AddParam("Y Position", "String\u0000", Integer.toString(var13.getTop() + 7));
  177.       IDLayout var15 = this.theJavaApplet.getLayout();
  178.       IDSite var5 = var15.getSite();
  179.       IDStyle var6 = var5.getCurrentStyle();
  180.       int var7 = var15.getBackgroundStyle();
  181.       if (var7 != 0) {
  182.          if (var7 == 1) {
  183.             this.theJavaApplet.AddParam("BackgroundColor", "String\u0000", Integer.toString(var15.getBackgroundColor()));
  184.          } else if (var7 == 2) {
  185.             int var8 = this.assetMan.AddAsset(var15.getBackgroundImage(), "Image\u0000", "");
  186.             String var9 = this.assetMan.GetAssetRelativeLocation(var8, var2, 1);
  187.             if (var2 == 1) {
  188.                var9 = "file:///" + var9;
  189.             }
  190.  
  191.             this.theJavaApplet.AddParam("BackgroundImage", "String\u0000", var9);
  192.          }
  193.       } else {
  194.          var7 = var6.getBackgroundStyle();
  195.          if (var7 == 1) {
  196.             this.theJavaApplet.AddParam("BackgroundColor", "String\u0000", Integer.toString(var6.getBackgroundColor()));
  197.          } else if (var7 == 2) {
  198.             int var17 = this.assetMan.AddAsset(var6.getBackgroundImage(), "Image\u0000", "");
  199.             String var18 = this.assetMan.GetAssetRelativeLocation(var17, var2, 1);
  200.             if (var2 == 1) {
  201.                var18 = "file:///" + var18;
  202.             }
  203.  
  204.             this.theJavaApplet.AddParam("BackgroundImage", "String\u0000", var18);
  205.          }
  206.       }
  207.  
  208.    }
  209.  
  210.    public void onDrop(IDLayout var1, IDRect var2, int var3) {
  211.       if (var3 == 1) {
  212.          this.maxWidth = 0;
  213.          this.maxHeight = 0;
  214.          this.numImages = 3;
  215.          this.imageURLs = new int[24];
  216.          this.imageNames = new int[24];
  217.          this.imageStarts = new int[24];
  218.          int var6 = 0;
  219.  
  220.          do {
  221.             this.imageNames[var6] = 0;
  222.             this.imageURLs[var6] = 0;
  223.             this.imageStarts[var6] = var6++;
  224.          } while(var6 < 24);
  225.  
  226.          this.theJavaApplet = new DDrawJava();
  227.          this.theJavaApplet.setImageFile(this.theJavaApplet.getCodeBase() + "banner.gif");
  228.          this.theJavaApplet.setAppletFileName(this.theJavaApplet.getCodeBase() + "TimeBased.class");
  229.          this.theJavaApplet.setStretch(1);
  230.          this.theJavaApplet.setAltTag("Time Based Loader");
  231.          int var4 = var2.getLeft();
  232.          int var5 = var2.getTop();
  233.          var1.AddObject(this.theJavaApplet);
  234.          this.theJavaApplet.AddParam("Number of Images", "String\u0000", "3");
  235.          this.imageNames[0] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner.gif", "Image\u0000", "");
  236.          this.imageNames[1] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner2.gif", "Image\u0000", "");
  237.          this.imageNames[2] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner3.gif", "Image\u0000", "");
  238.          DImage var9 = new DImage();
  239.          var9.setImageFile(this.theJavaApplet.getCodeBase() + "banner.gif");
  240.          IDSize var7 = var9.getSize();
  241.          if (var7.getHeight() > this.maxHeight) {
  242.             this.maxHeight = var7.getHeight();
  243.             if (var7.getWidth() > this.maxWidth) {
  244.                this.maxWidth = var7.getWidth();
  245.             }
  246.  
  247.             this.theJavaApplet.SetPositionRect(var4, var5, var4 + this.maxWidth, var5 + this.maxHeight);
  248.          } else if (var7.getWidth() > this.maxWidth) {
  249.             this.maxWidth = var7.getWidth();
  250.             this.theJavaApplet.SetPositionRect(var4, var5, var4 + this.maxWidth, var5 + this.maxHeight);
  251.          }
  252.  
  253.       }
  254.    }
  255.  
  256.    public void onInspect(CStringArray var1, CStringArray var2) {
  257.       var1.Set("Number of Images");
  258.       var2.Set("Collection\u0000");
  259.  
  260.       for(int var3 = 0; var3 < this.numImages; ++var3) {
  261.          var1.Set("Image " + Integer.toString(var3 + 1));
  262.          var2.Set("Image\u0000");
  263.          var1.Set("URL for Image " + Integer.toString(var3 + 1));
  264.          var2.Set("Link\u0000");
  265.          var1.Set("Start Time for Image " + Integer.toString(var3 + 1));
  266.          var2.Set("Set(12am|1am|2am|3am|4am|5am|6am|7am|8am|9am|10am|11am|12pm|1pm|2pm|3pm|4pm|5pm|6pm|7pm|8pm|9pm|10pm|11pm)");
  267.       }
  268.  
  269.    }
  270. }
  271.